2 יח"ל ) השלמה ל - 5 יח"ל) (50 נקודות) מעבר חוקי, ו-'שקר' אחרת.

Σχετικά έγγραφα
חורף תש''ע פתרון בחינה סופית מועד א'

תשובות מלאות לבחינת הבגרות במתמטיקה מועד ג' תשע"ד, מיום 0/8/0610 שאלונים: 315, מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן

3-9 - a < x < a, a < x < a

תרגול פעולות מומצאות 3

גבול ורציפות של פונקציה סקלרית שאלות נוספות

סדרות - תרגילים הכנה לבגרות 5 יח"ל

פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

שאלה 1 V AB פתרון AB 30 R3 20 R

השאלות ידי מצביעים לילדים.

ל הזכויות שמורות לדפנה וסטרייך

דוגמה: יהי T עץ בינארי כפי שמתואר בציור הבא:

צעד ראשון להצטיינות מבוא: קבוצות מיוחדות של מספרים ממשיים

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

(2) מיונים השאלות. .0 left right n 1. void Sort(int A[], int left, int right) { int p;

שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

Logic and Set Theory for Comp. Sci.

אוטומט סופי דטרמיניסטי מוגדר ע"י החמישייה:

תרגול מס' 6 פתרון מערכת משוואות ליניארית

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

מדעי המחשב ב' פתרון בחינת הבגרות. One n 4.0. One n T 4 3 T 8 4 T 16 5 T 32 6 F

gcd 24,15 = 3 3 =

ניתן לקבל אוטומט עבור השפה המבוקשת ע "י שימוששאלה 6 בטכניקתשפה המכפלה שנייה כדי לבנות אוטומט לשפת החיתוך של שתי השפות:

מיונים א': מיון (Sorting) HeapSort. QuickSort תור עדיפויות / ערימה

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

לוגיקה ותורת הקבוצות פתרון תרגיל בית 4 אביב תשע"ו (2016)

מבני נתונים ויעילות אלגוריתמים

מבני נתונים ואלגוריתמים תרגול #3 נושאים: תור קדימויות/ערימה, עצים

לוגיקה ותורת הקבוצות פתרון תרגיל בית 8 חורף תשע"ו ( ) ... חלק ראשון: שאלות שאינן להגשה נפריד למקרים:

תרגיל 13 משפטי רול ולגראנז הערות

{ : Halts on every input}

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

משוואות רקורסיביות רקורסיה זו משוואה או אי שוויון אשר מתארת פונקציה בעזרת ערכי הפונקציה על ארגומנטים קטנים. למשל: יונתן יניב, דוד וייץ

logn) = nlog. log(2n

max(sod1,sod2) 5 1 F (9321,345) סוד 1 1 max ( 1, 2 ) F (345,296) סוד 1 0 max ( 0, 2 ) F (296,7) סוד 1 2 max ( 2, 1 ) 2

TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE סמסטר אביב תשס"ו מס' סטודנט:

סיכום- בעיות מינימוםמקסימום - שאלון 806

מכונת טיורינג אוטומט מחסנית לא דטרמיניסטי שפות חופשיות הקשר (שפת ראי לא מסומנת)

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

' 2 סמ ליגרת ןורתפ םיפרגה תרותב םימתירוגלא דדצ 1 : הלאש ןורתפ רבסה תורעה

אלגברה ליניארית (1) - תרגיל 6

פתרון תרגיל 6 ממשוואות למבנים אלגברה למדעי ההוראה.

תאריך עדכון אחרון: 27 בפברואר ניתוח לשיעורין analysis) (amortized הוא טכניקה לניתוח זמן ריצה לסדרת פעולות, אשר מאפשר קבלת

תאריך הבחינה: שם המרצה: רפי כהן שם המתרגל: יסודות מבני נתונים שם הקורס:

ב ה צ ל ח ה! /המשך מעבר לדף/

דף פתרונות 7 נושא: תחשיב הפסוקים: צורה דיסיונקטיבית נורמלית, מערכת קשרים שלמה, עקביות

חישוביות הרצאה 4 לא! זיהוי שפות ע''י מכונות טיורינג הוכחה: הגדרת! : f r

מבני נתונים מדעי המחשב שאלון: מועד ב' תשע"ו מדעי המחשב פתרון בחינת הבגרות. Java שאלה 1. blog.csit.org.

סיכום בנושא של דיפרנציאביליות ונגזרות כיווניות

מבני נתונים עצים שיעור 7

הגדרה: קבוצת פעילויות חוקית היא קבוצה בה כל שתי פעילויות

2 שאלות )בחירה מ - 4( סה"כ 25 נקודות לכל שאלה 22 נקודות

אלגברה לינארית מטריצות מטריצות הפיכות

מבני נתונים מבחן מועד ב' סמסטר חורף תשס"ו

תרגיל 7 פונקציות טריגונומטריות הערות

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

מבני נתונים (234218) 1

בחינה בסיבוכיות עמר ברקמן, ישי חביב מדבקית ברקוד

מבני נתונים ויעילות אלגוריתמים

רשימת משפטים והגדרות

תכנון אלגוריתמים 2016 עבודה 1 שאלה 1 פתרון נתונות שתי בעיות. יש למצוא: אורך מסלול קצר ביותר המתחיל באחד מן הקודקודים s 1,..., s k ומסתיים ב t.

תשובות מלאות לבחינת הבגרות במתמטיקה מועד חורף תשע"א, מיום 31/1/2011 שאלון: מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן.

מבני נתונים מבחן מועד א' סמסטר אביב תשס"ו

פתרון תרגיל בית 6 מבוא לתורת החבורות סמסטר א תשע ז

מתמטיקה בדידה תרגול מס' 5

s ק"מ קמ"ש מ - A A מ - מ - 5 p vp v=

"קשר-חם" : לקידום שיפור וריענון החינוך המתמטי

תרגול 8: מטלאב לולאות

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

(ספר לימוד שאלון )

= 2. + sin(240 ) = = 3 ( tan(α) = 5 2 = sin(α) = sin(α) = 5. os(α) = + c ot(α) = π)) sin( 60 ) sin( 60 ) sin(

סיכום חקירת משוואות מהמעלה הראשונה ומהמעלה השנייה פרק זה הינו חלק מסיכום כולל לשאלון 005 שנכתב על-ידי מאיר בכור

מודלים חישוביים פתרון תרגיל 5

אוסף שאלות מס. 3 פתרונות

מתמטיקה בדידה תרגול מס' 13

תשובות מלאות לבחינת הבגרות במתמטיקה מועד קיץ תש"ע מועד ב', מיום 14/7/2010 מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן.

חלק 1 כלומר, פונקציה. האוטומט. ) אותיות, אלפבית, א"ב (.

תורת הגרפים - סימונים

1 שאלו : Together double x 5.0 int from 2 int to 6 One first Two second One n 5.0 Queue<One>q One n 4.0 One n 8.0 One n 16.

ושל (השטח המקווקו בציור) . g(x) = 4 2x. ו- t x = g(x) f(x) dx

co ארזים 3 במרץ 2016

עץץץץ AVL. עץ AVL הוא עץ חיפוש בינארי שמקיים את התנאי הבא: לכל צומת x בעץ גורם האיזון של x הוא 1, 0, או 1-. הגדרה: במילים אחרות: לכל צומת x בעץ,

כלליים זמן: S מחסנית, top(s) ראש המחסנית. (Depth First Search) For each unmarked DFS(v) / BFS(v) רקורסיבי. אלגוריתם :BFS

עצי 2-3 תזכורת: בנים. דוגמאות: Chapter 19: B trees ( ) Chapter 15: Augmenting data structures ( )

מבחן מועד ב' בהצלחה! אנא קיראו היטב את ההוראות שלהלן: ודאו כי כל עמודי הבחינה נמצאים בידכם.

קבוצה היא שם כללי לתיאור אוסף כלשהו של איברים.

( n) ( ) ( ) שאלה 1: שאלה 2: שאלה 3: (n 5) = Θ. ב. אם f 1, f 2, g 1, g 2. .g 1 *g 2 = Ω(f 1 *f 2 ) , g. ג. ) n.n! = θ(n*2. n) f ( אז ד. אם ה. אם ו.

x a x n D f (iii) x n a ,Cauchy

םינותנ ינבמ 3 ליגרתמ תולאשל המוד תולאש טסל תונורתפ תולאשה

1 שאלון: תשס"ט { int listsize = size(list); int n = listsize / 3; if (listsize == 0 listsize % 3!

קיום ויחידות פתרונות למשוואות דיפרנציאליות

מכונת טיורינג אוטומט מחסנית לא דטרמיניסטי שפות חופשיות הקשר (שפת ראי לא מסומנת)

תרגילים באמצעות Q. תרגיל 2 CD,BF,AE הם גבהים במשולש .ABC הקטעים. ABC D נמצאת על המעגל בין A ל- C כך ש-. AD BF ABC FME

אוטומטים- תרגול 10: מכונות טיורינג.

אלגוריתמים בתורת הגרפים חלק ראשון

אוטומטים- תרגול 8 שפות חסרות הקשר

ניהול תמיכה מערכות שלבים: DFfactor=a-1 DFt=an-1 DFeror=a(n-1) (סכום _ הנתונים ( (מספר _ חזרות ( (מספר _ רמות ( (סכום _ ריבועי _ כל _ הנתונים (

Domain Relational Calculus דוגמאות. {<bn> dn(<dn, bn> likes dn = Yossi )}

Transcript:

1 6 מאי, 2004 מועד הבחינה: 2 יח"ל ) השלמה ל - 5 יח"ל) פרק ראשון (50 נקודות) :1 Ï (מקור: שירלי רוזנברג כהן) נגדיר טיפוס נתונים חדש בשם תלת-מחסנית, כמבנה המכיל 3 מחסניות S3. S2, S1, נגדיר את הפעולות הבאות על התלת-מחסנית: העבר Sy) (TS, Sx, מעבר-חוקי Sy) (TS, Sx, השווה Sy) (TS, Sx, ריקה? Sx) (TS, מבנה תלת-המחסנית נראה כך: פעולה המקבלת תלת-מחסנית TS ומעבירה איבר מראש מחסנית Sx למחסנית.Sy הנחות: TS מאותחלת, Sx ו- Sy הן מחסניות ב- TS, Sx אינה ריקה. הפעולה מחזירה 'אמת' אם המעבר בין מחסנית Sx למחסנית Sy הוא מעבר חוקי, ו-'שקר' אחרת. מעברים חוקיים הם רק מ- S1 ל- S2 מ, -S2 ל- S3, ומ- S3 ל- S1. הנחות: TS מאותחלת, Sx ו- Sy הן מחסניות ב- TS. פעולה המחזירה 'אמת' אם האיבר בראש מחסנית Sx גדול או שווה לאיבר בראש מחסנית,Sy ו-'שקר' אחרת. הנחות: TS מאותחלת, Sx ו- Sy מחסניות ב- TS ואינן ריקות. פעולה המחזירה 'אמת' אם המחסנית Sx ריקה ו-'שקר' אחרת. הנחות: TS מאותחלת, Sx מחסנית ב-.TS S1 S3 S2 נתונה תלת-מחסנית, שבה S1 מכילה מספרים שלמים לא ממויינים, S2 ו- S3 ריקות. ב כתוב אלגוריתם המממש את הפעולה: מקסימום-בתלת-מחסנית,(TS) המקבלת תלת-מחסנית,TS ומעבירה את האיבר המכסימלי מ- S1 ל- S2. בסוף הפעולה יהיו כל האיברים, למעט המכסימלי, ב- S1, ללא חשיבות לסדר. כתוב אלגוריתם יעיל ככל שתוכל למימוש הפעולה: מיין,(TS) המקבלת תלת-מחסנית,TS ומחזירה תלת-מחסנית ממוינת, כך שבאחת מהמחסניות נמצאים איברים ממוינים בסדר עולה (האיבר הגדול ביותר נמצא בתחתית המחסנית). מהי סיבוכיות האלגוריתם שכתבת בסעיף ב', מתוך הנחה שבמחסנית S1 יש N איברים? נמק.

2 הייצוג המתאים לתלת-מחסנית הוא מערך בגודל 3 שכל אחד מאיבריו הוא מטיפוס מחסנית. מקסימום-בתלת-מחסנית (TS) פעולה המקבלת תלת-מחסנית,TS ומעבירה את האיבר המכסימלי מ- S1 ל- S2. בסוף הפעולה יהיו כל האיברים, למעט המכסימלי, ב- S1. הנחה: TS מאותחל. בתחילת הפעולה נמצאים כל האיברים מתוכם יש למצוא את המקסימום ב- S1. אם לא מחסנית-ריקה (TS[1]) אז העבר S2) (TS, S1, (1.1) כל עוד לא מחסנית-ריקה,(TS[1]) בצע: השווה S2) bigger (TS, S1, (2.1) אם bigger אז (2.1) העבר S3) (TS, S2, (2.1.1) העבר S2) (TS, S1, (2.1.2) אחרת - (2.2) העבר S2) (TS, S1, (2.2.1) העבר S3) (TS, S2, (2.2.2) כל עוד לא מחסנית-ריקה (TS[3]) בצע: העבר S1) (TS, S3, האיבר שבראש S1 גדול מהאיבר שבראש S2 שמירת האיבר הגדול ב- S2 והעברת הקטן מביניהם ל- S3 (3) מיין (TS) פעולה המקבלת תלת-מחסנית,TS ומחזירה תלת-מחסנית ממוינת, כך שבאחת מהמחסניות נמצאים איברים ממוינים בסדר עולה. הנחה: TS מאותחלת. כל עוד לא מחסנית-ריקה,(TS[1]) בצע: (1.1) מקסימום-בתלת-מחסנית (TS) הסבר: בכל איטרציה מוצא איבר אחד מ- S1 לתוך S2. ב- S2 נערמים האיברים בצורה ממויינת מהאיבר הגדול (בתחתית המחסנית) לאיבר הקטן בראשה. לכן בסוף הפעולה תישאר מחסנית S1 ריקה ו- S2 מלאה בכל האיברים. (S3 המשמשת כמחסנית עזר תישאר ריקה אף היא). סיבוכיות הפעולה מיין היא ) 2.O(n סיבוכיות הפעולה מקסימום-בתלת-מחסנית היא,O(n) כי עוברים על כל האיברים פעם אחת כדי למצוא את המקסימום (ופעם שנייה כדי להחזירם ל-.(f(n) = 2n S1, הפעולה מיין מבצעת עבור כל איבר במחסנית את הפעולה מקסימום-בתלת-מחסנית, ולכן.O(n 2 ) נותן סיבוכיות n*o(n)

3 Ï 2: (מקור: אתי הרשקוביץ) נתונה מטריצה מסדר NxN של מספרים שלמים. נגדיר: מטריצה-שורות-חזקות- 10 הינה מטריצה שסכום השורה הראשונה בה קטן מ- 10, סכום השורה השנייה במטריצה קטן מ- 100, סכום השורה השלישית קטן מ- 1000, וכך הלאה - סכום השורה האחרונה במטריצה קטן מ- 10 בחזקת. n כתוב פונקציה רקורסיבית, בסביבת עבודה, בשם מטריצה-שורות-חזקות- 10 המקבלת מטריצה מסדר NxN שכזו, בודקת ומחזירה "אמת" אם המטריצה היא מטריצה-שורות-חזקות- 10, ו-"שקר" אחרת. (קבע את הפרמטרים שיש להעביר לפעולה). הערה: מותר להיעזר בפונקציות נוספות רקורסיביות אף הן. מטריצה-שורות-חזקות- 10 i) (A, פעולה המקבלת מטריצה A מסדר NxN ושורה התחלתית 0 ומחזירה "אמת" אם כל שורה I שווה ל- 10 בחזקת I. (בשפת C: 10 בחזקת 1+I). אם i עבר את השורה האחרונה, החזר "אמת". אחרת - אם סכום-שורה (j (A,i, גדול או שווה ל- חזקה (1+i,10), החזר "שקר". (2.1) החזר מטריצה-שורות-חזקות- 10 i+1) (A, (2.2) סכום-שורה j) (A,i, הפעולה מחזירה את סכום האיברים בשורה ה- i במטריצה A החל מאיבר j. אם j גדול ממספר העמודה האחרונה בשורה, החזר 0. אחרת - החזר A(i,j) + סכום-שורה (A,i,j+1) חזקה (i,10) פעולה המחזירה את הערך של 10 בחזקת i. הערה: הפעולה קיימת בשפת C וניתן להשתמש בה אם = 0 i החזר 1 אחרת - החזר * 10 חזקה i-1) (10,

4 #include <stdio.h> #include <math.h> #define TRUE 1 #define FALSE 0 #define N typedef int Mat_type [N][N]; : C פעולה המקבלת מטריצה A מסדר NxN ושורה התחלתית 0 ומחזירה "אמת" אם כל שורה I שווה ל- 10 בחזקת I. (בשפת C: 10 בחזקת 1+I). int mat_row_power_10 (Mat_type A, int i) if (i = = N) return TRUE; if (mat_sum_of_row (A, i, 0) pow (10, i+1) return FALSE; return mat_row_power_10 (A, i+1) הפעולה מחזירה את סכום האיברים בשורה ה- i במטריצה A החל מאיבר j. int mat_sum_of_row (Mat_type A, int i, int j) if (j = = N) return 0; return A[i][j] + mat_sum_of_row (A, I, j+1); משפט הזימון לפונקציה: int answer ; answer = mat_row_power_10 (A,0) ;

5 const N = ; type Mat_type = array [1..N,1..N] of integer; פסקל : פעולה המקבלת מטריצה A מסדר NxN ושורה התחלתית 0 ומחזירה "אמת" אם כל שורה I שווה ל- 10 בחזקת I. (בשפת C: 10 בחזקת 1+I). function mat_row_power_10 (A : Mat_type; I : integer) : Boolean; begin if (I > N) then mat_row_power_10 := TRUE else if (mat_sum_row (A, I, 1) power (10, I) then mat_row_power_10 := FALSE else mat_row_power_10 := mat_row_power_10 (A, I+1) end; הפעולה מחזירה את סכום האיברים בשורה ה- i במטריצה A החל מאיבר j. function mat_sum_of_row (A : Mat_type; I, j : integer) : integer ; begin if (j > N) then mat_sum_of_row := 0 else mat_sum_of_row := A[I,j] + mat_sum_of_row (A, I, j+1); end; פעולה המקבלת בסיס a ומעריך שלם וחיובי I ומחזירה את 10 בחזקת i. function power (a, I : integer) : integer ; begin if (I = 0) power := 1 else power := a * power (a, i-1) ; end; משפט הזימון לפונקציה: var answer : Boolean ; answer := mat_row_power_10 (A,1) ;

6 :3 Ï להלן האלגוריתם סוד המטפל בעץ בינארי בעזרתן של שתי מחסניות S1 ו- S2 : ) שים לב לטיפוס הנתונים המתאים לכל אחת מהמחסניות! ( סוד (T) האלגוריתם מקבל עץ בינארי T לא ריק. טענת כניסה: טענת יציאה: S1 אתחל-מחסנית S2 אתחל-מחסנית דחוף-למחסנית (S1,T) (3) דחוף-למחסנית (S2,0) (4) M 0 (5) כל עוד לא מחסנית-ריקה (S1) בצע: (6) T1 שלוף-ממחסנית (S1) (6.1) x שלוף-ממחסנית (S2) (6.2) M M + 1 (6.3) אם לא עץ-ריק? (תת-עץ-ימני (T1)) אזי (6.4) דחוף-למחסנית (תת-עץ-ימני (T1) (S1, (6.4.1) דחוף-למחסנית +1) x (S2, (6.4.2) אם לא עץ-ריק? (תת-עץ-שמאלי (T1)) אזי (6.5) דחוף-למחסנית (תת-עץ-שמאלי (T1) (S1, (6.5.1) דחוף-למחסנית +1) x (S2, (6.5.2) החזר M (7) 1 2 4 נתון העץ הבינארי הבא T: ב. ד. ה. מה תחזיר הפעולה סוד (T) עבור עץ זה? מה תפקיד המשתנה x בפעולה סוד? מה עושה הפעולה סוד (T)? השלם את טענת היציאה. 3 6 5 כתוב אלגוריתם רקורסיבי המקבל עץ בינארי T ומבצע את הפעולה שמבצע סוד. מה יש לשנות בפעולה סוד כדי שיוחזר גובה העץ? ציין את מספר השורה או שורות שיש לשנות והסבר. נשים לב כי טיפוס המידע ב- S1 הוא עץ-בינארי, ולכן ל- T1 הנשלף מהמחסנית מוחזר עץ בינארי, ואילו טיפוס המידע של S2 הוא מספרי שלם ולכן ל- x מוחזר מספר שלם.

7 ב. ה. הפעולה תחזיר 6. תפקיד x לשמור את רמת הצומת בעץ (המקורי). סוד מחזיר את מספר הצמתים ב- T. כדי להחזיר את גובה העץ יש להחזיר את ערך x המקסימלי. + מספר-צמתים (תת-עץ-ימני (T)) מספר-צמתים (T) פעולה המחזירה את מספר הצמתים בעץ בינארי T. הנחה: T מאותחל. אם עץ-ריק (T), החזר 0 אחרת - החזר + 1 מספר-צמתים (תת-עץ-שמאלי (T)) ד. Ï 4: (מקור: אתי הרשקוביץ) עץ-ערמה-בינארי הינו עץ בינארי המכיל עד N צמתים ומיוצג בעזרת מערך שגודלו N. כל תא במערך מטיפוס המידע השמור בעץ. צמתי העץ מאוחסנים במערך באופן הבא: שורש העץ נמצא בתא מספר 1 במערך. בנו השמאלי של השורש נמצא בתא 2, ובנו הימני בתא 3 במערך. לכל צומת המאוחסן בתא מספר i, ימצא בנו השמאלי בתא i*2 ובנו הימני בתא 1+i*2. בתא מספר 0 שמור מספר הצמתים המאוחסנים בפועל בעץ. שים לב: אם קיימים תאים ריקים במערך, הם יהיו אך ורק אחרי מספר הצמתים המוגדר בתא שבמקום ה- 0. להלן חלק מהפעולות המוגדרות בממשק עץ-ערמה-בינארי : פעולה המחזירה את מספר התא של ההורה של הצומת במקום i הורה i) (TP, בעץ-ערמה-בינארי.TP הנחות: עץ-ערמה-בינארי מאותחל ותקין, i מקום תקין של צומת. פעולה המחזירה את מיקומו של הבן השמאלי של צומת i בעץ- בן-שמאלי i) (TP, ערימה-בינארי.TP הנחות: עץ-ערמה-בינארי מאותחל ותקין, i מקום תקין של צומת. פעולה המחזירה את מיקומו של הבן הימני של צומת i בעץ- בן-ימני i) (TP, ערימה-בינארי.TP הנחות: עץ-ערמה-בינארי מאותחל ותקין, i מקום תקין של צומת. פעולה המאחזרת את ערך הצומת i בעץ-ערמה-בינארי.TP אחזר-שורש i) (TP, הנחות: עץ-ערמה-בינארי מאותחל ותקין, i מקום תקין של צומת.

8 מספר-צמתים (TP) עץ-ערמה-בינארי-מקסימאלי? (TP) החלף-ערכי-צמתים j) (TP, i, פעולה המחזירה את מספר הצמתים הקיימים בפועל בעץ-ערמה- בינארי.TP הנחה: עץ-ערמה-בינארי מאותחל ותקין. פעולה המחזירה "אמת" אם ערכו של לכל צומת בעץ-ערמה- בינארי TP גדול מערך כל אחד מבניו, ו-"שקר" אחרת. הנחה: עץ-ערמה-בינארי מאותחל ותקין. פעולה המחליפה את תוכן הצמתים במקומות i ו- j בעץ-ערמה- בינארי.TP הנחות: עץ-ערמה-בינארי מאותחל ותקין, i,j מקוות תקינים של צמתים בעץ. נתון עץ-ערמה-בינארי הבא: 0 1 2 3 4 5 6 7 8 9 10 11 12 10 16 14 10 8 7 9 3 2 4 1 צייר את העץ הנתון כמבנה של עץ בינארי. כיצד תזהה עלה בעץ-ערמה-בינארי? תאר במילים מאפיינים של עץ-ערמה-בינארי (התייחס לצורתו ולא לערכים שבו). (3) עבור כל אחד מהעצים שלהלן, רשום אם הוא מקיים כל אחת מהתכונות הבאות: עץ-ערמה-בינארי. עץ-ערמה-בינארי-מקסימאלי. עץ בינארי רגיל. (3) ב. 25 (iii) 9 (ii) 60 (i) 15 20 6 30 20 8 15 2 31 20 15 ממש את הפעולה הורה (i (TP, המשך השאלה בעמוד הבא

9 ד. כתוב אלגוריתם למימוש הפעולה אב-קדמון? (i (TP,,j המחזירה "אמת" אם הצומת שנמצא במקום, j בעץ-ערמה-בינרי,TP הינו אב-קדמון של הצומת שנמצא במקום i, ו-"שקר" אחרת. הנחות: TP עץ-ערמה-בינרי מאותחל ותקין, i,j מקוות תקינים של צמתים בעץ, i. j ה. להלן פעולה המקבלת מיקום של צומת בעץ-ערמה-בינארי.TP הצב-צומת-בעץ-ערמה-בינארי i) (TP, טענת כניסה: הפעולה מקבלת עץ-ערמה-בינארי TP ומיקום i של צומת בעץ. טענת יציאה: הנחות: TP עץ-ערמה-בינארי תקין. left, right ו- largest הינם אינדקסים במערך המכיל את עץ-ערמה-בינארי.TP בן-שמאלי (TP,i) left בן-ימני (TP,i) right אם left מספר-צמתים (TP) וגם אחזר-שורש (TP,left) < אחזר-שורש,(TP,i) אזי largest left אחרת - i largest אם right מספר-צמתים (TP) וגם אחזר-שורש (TP,right) < אחזר-שורש,(TP,largest) אזי largest right אם i שונה מ- lergest, אזי (6.1) החלף-ערכי-צמתים (TP,I,largest) (6.2) הצב-צומת-בעץ-ערמה-בינרי (TP,largest) (3) (4) (5) (6) השלם את טענת היציאה של האלגוריתם. העבר את העץ שלפניך לצורת עץ-ערמה-בינרי. i מציין מספר הצומת המסומן. הפעל את האלגוריתם על העץ והראה את השינויים לאחר כל שלב. 16 הצומת שבמקום i 4 10 14 7 9 3 2 6 1

10 הערה: העץ שיתקבל הוא העץ שבסעיף ה' לאחר הפעלת האלגוריתם. עלה הינו צומת i המקיים i*2 ו- 1+i*2 גדולים מהערך שבתא 0 שבמערך. 16 14 10 8 7 9 3 2 4 1 עץ-ערמה-בינרי הינו עץ בינרי כמעט מל עץ בינארי מלא הינו עץ בינארי שכל הרמות בו מלאות. עץ בינארי כמעט מלא הינו עץ שכל הרמות בו, פרט לאחרונה, מלאות, וברמה האחרונה נמצאים כל העלים בחלק השמאלי של העץ. כלומר, בסריקה לפי רמות, ברמה האחרונה, לא יהיו צמתים אחרי העץ הריק הראשון שבו ניתקל. 25 (iii) (ii) 9 60 (i) (3) ב. 15 20 6 30 20 8 15 2 31 20 15 מספר עץ עץ-ערמה-בינרי עץ-ערמה-בינרי-מכסימלי עץ-בינרי מקיים לא מקיים מקיים i - לא מקיים מקיים ii - לא מקיים מקיים iii הורה (TP,i) פעולה המחזירה את מספר התא של ההורה של הצומת במקום i בעץ-ערמה-בינרי.TP הנחות: עץ-ערמה-בינרי מאותחל ותקין, i מקום תקין של צומת. מנה = החלק השלם של פעולת החילוק החזר את מנת החלוקה של i ב- 2. אב-קדמון j) (TP, i, פעולה המחזירה "אמת" אם הצומת שנמצא במקום, j בעץ-ערמה-בינרי,TP הינו אב-קדמון של הצומת שנמצא במקום i, ו-"שקר" אחרת. הנחות: TP עץ-ערמה-בינרי מאותחל ותקין, i,j מקומות תקינים של צמתים בעץ, i. j רקורסיבי: II איטרטיבי: אם הורה (TP,i) j = החזר "אמת" כל עוד הורה (i j < (TP, בצע: אם i < j החזר "שקר" הורה i) i (TP, אב-קדמון,j) הורה,(TP,i) (TP החזר - (3) אם i = j החזר "אמת" החזר "שקר" ד. I (3)

11 ה. טענת יציאה: הפעולה "מתקנת" עץ-ערמה-בינארי TP להיות עץ-ערמה-בינארי-מקסימאלי. 0 1 2 3 4 5 6 7 8 9 10 11 12 10 16 4 10 14 7 9 3 2 6 1 i left right largest אינדקס הצומת 2 4 5 4 ערך השורש 4 14 7 14 0 1 2 3 4 5 6 7 8 9 10 11 12 10 16 14 10 4 7 9 3 2 6 1 i left right largest 4 8 9 \ 9 4 אינדקס הצומת 4 2 6 \ 6 4 ערך השורש 0 1 2 3 4 5 6 7 8 9 10 11 12 10 16 14 10 6 7 9 3 2 4 1 האלגוריתם מסתיים כי ערכי left ו- right גדולים ממספר-צמתים (TP) ו- i אינו שונה מ-.largest

12 פרק בפרק זה שאלות משישה מסלולים שונים. עליך לענות רק על השאלות במסלול שלמדת, תורת המחשב שני (50 נקודות) ענה על שתיים מהשאלות 12-9 (לכל שאלה - 25 נקודות). על-פי ההוראות באותו המסלול. f1(x) = (-0.5) x + 1.5 f2(x) = 2x-3 f3(x) = x 3-3x-1 Ï 9: (מקור: תיכון אלון, רמה"ש) נתונות שלוש הפונקציות הבאות, כמתואר בשרטוט: f1(x) f3(x) f2(x) ב. יש למצוא, בשיטת החצייה, קירוב לפתרון הפונקציה f3(x) הנמצא בין נקודות החיתוך של הישר f1(x) עם ציר ה- x ונקודת החיתוך של f2(x) עם ציר x (נקודות A,B בשרטוט). הסבר מה יש לוודא לגבי נקודות B A, על מנת שניתן יהיה להשתמש בהן כנקודות התחלה של שיטת החצייה. מצא, ע"י חישוב מתמטי, את שיעורי הנקודות.,A B כתוב תוכנית בסביבת העבודה המחשבת ומדפיסה את הקירוב לפתרון בדיוק של 0.001, בעזרת הנקודות שמצאת בסעיף ב'.

13 f 1 ( x = 3 ב. תנאים לקיום פתרון בקטע :[a,b] x. מוגדרת ורציפה בקטע - בדיקת תחום הצבה מראה שיש פתרון לכל f3 f3(3) = 17, f3(1.5) = -2.125 - וגם קיים פתרון יחיד בתחום. f3(a) * f3(b) < 0 x) = 0.5x + 1.5 = 0 0.5x + 1.5 = 0 שיעורי a ו- b: b = 3 f x) = 2x 3 = 0 a = 1.5 2 ( 2x 3 = 0 x = 1.5 תכנית בסביבת העבודה: קיים פתרון בתחום [x,b] קיים פתרון בתחום [a,x] ε 0.001 a 1.5, b 3 כל עוד a-b > ε בצע: x (a - b)/2 (3.1) אם > 0 f3(a) f3(x) * אזי (3.3) a x x b אחרת - (3.4) פלט: הפתרון המקורב הוא: x (3) (4) חישוב פתרון הפונקציה f3 בתחום [a,b] בשיטת החצייה // #include <stdio.h> :C #include <math.h> float f3 (float x) ; void main () float a = 1.5, b = 3, eps = 0.001 ; while ( fabs (a-b) > eps) x = (a + b) / 2 ; if ( f3(x) * f3(a) > 0) a = x ; else b = x ; printf ("x = %f", x) ; //--- f3 returns: y =x 3-3x-1 --- float f3 (float x) return pow(x,3) - 3*x - 1 ; // fabs = float absolute number

14 חישוב פתרון הפונקציה f3 בתחום [a,b] בשיטת החצייה program middle_cat ; var a, b, eps : real ; --- f3 returns: y =x 3-3x-1 --- function f3 (x : real) : real ; begin f3 := x*sqr(x) - 3*x - 1 ; end; main program begin a: = 1.5; b := 3; eps : = 0.001 ; end. while ( abs (a-b) > eps ) do begin x := (a + b) / 2 ; if ( f3(x) * f3(a) > 0) then a := x else b := x ; end; writeln ('x = ', x) ; פסקל: :10 Ï שאלה בתורת הגרפים... :11 Ï בנה אוטומט סופי דטרמיניסטי לשפה הבאה: המכילה את כל המילים כך שאם הן מסתיימות ב- b Σ =,a b, תהי L השפה מעל c אזי הן מכילות לפחות שני מופעים של c. a a a,b,c c c b a c b a c b b

15 H : S X Y ε X abay ε Y babx ε :12 Ï נתונים הדקדוקים G ו- H הבאים: G : S ax by ε X bas Y abs מהי השפה הנוצרת ע"י הדקדוק? G ומהי השפה הנוצרת ע"י הדקדוק? H האם הדקדוקים שקולים? נמק! L = bba i b j a i, j 0, j 2i ב. כתוב דקדוק עבור השפה הבאה: דקדוק G: יוצר מילים מעל a,b כך שאורך הרצף המקסימאלי של a או של b הוא 2. (רצף כזה אינו יכול להופיע בתחילת המילה אלא רק מהתו השלישי). דקדוק H: יוצר מילים מעל a,b כך שבין כל שתי אותיות a תהיה בדיוק אות b אחת, ובין כל שתי אותיות b תהיה בדיוק אות a אחת. שני הדקדוקים יוצרים את המילה הריקה. שני הדקדוקים אינם שקולים. H). ואינם קיימים בשפה של G קיימים בשפה המוגדרת על ידי הדקדוק abaaba, babbab ) S bbaa A aabb Bb ε B Bb ε j = 2i j > 2i ב. משתנה A מבטיח: משתנה B מבטיח: